table of contents
PAPI_start_counters(3) | PAPI | PAPI_start_counters(3) |
NAME¶
PAPI_start_counters - PAPI High Level: start counting hardware events
SYNOPSIS¶
C Interface
#include <papi.h> int PAPI_start_counters(int *events, int array_len);
Fortran Interface
#include fpapi.h PAPIF_start_counters(C_INT(*) events, C_INT array_len, C_INT check)
DESCRIPTION¶
PAPI_start_counters() starts counting the events named in the events array. This function cannot be called if the events array is already running. The user must call PAPI_stop_counters to stop the events explicitly if he/she wants to call this function again. It is the user's responsibility to choose events that can be counted simultaneously by reading the vendor's documentation. The length of the event array should be no longer than the value returned by PAPI_num_counters(3).
ARGUMENTS¶
*events -- an array of codes for events such as PAPI_INT_INS or a native event code
array_len -- the number of items in the *events array
RETURN VALUES¶
On success, this function returns PAPI_OK.
On error, a non-zero error code is returned.
ERRORS¶
- PAPI_EINVAL
- One or more of the arguments is invalid.
- PAPI_EISRUN
- Counters already been started, you must call PAPI_stop_counters before you call this function again.
- PAPI_ESYS
- A system or C library call failed inside PAPI, see the errno variable.
- PAPI_ENOMEM
- Insufficient memory to complete the operation.
- PAPI_ECNFLCT
- The underlying counter hardware can not count this event and other events in the EventSet simultaneously.
- PAPI_ENOEVNT
- The PAPI preset is not available on the underlying hardware.
EXAMPLES¶
/* Start counting events */
if (PAPI_start_counters(Events, num_hwcntrs) != PAPI_OK)
handle_error(1);
BUGS¶
This function has no known bugs.
SEE ALSO¶
PAPI_create_eventset(3), PAPI_add_event(3), PAPI_stop_counters(3), PAPI(3), PAPIF(3)
September, 2004 | PAPI Programmer's Reference |